Within today's energy conscious society, manufacturers of computers are constantly striving for ways of producing more energy efficient computers. Efforts within the computing industry to achieve this aim manifest themselves in the form of computers that comply with the Advanced Configuration and Power Interface specification, revision 2.0, Jul. 27, 2000, together with its errata. This specification defines a number of reduced power, or sleep, modes during which the computer system, rather than being mechanically turned off, assumes a state in which the power consumption is reduced as compared to the conventional working mode, S0. The ACPI specification defines six such modes, each having a respective level of power consumption. The six modes include the working mode, S0, first, second, third and fourth sleep modes, S1, S2, S3 and S4, and a clean shut-down mode, S5.
During, for example, the S4 mode, also know as the hibernate mode, the power consumption of the computer system is minimal and only marginally greater than when the computer system has been completely switched off as in the S5 mode. During the hibernate mode there is no outward indication that the computer system is in that mode. This presents a significant problem for maintenance personnel during maintenance of the computer system. For safety reasons, maintenance personnel often, as a first course of action, remove the power supply to the computer system to remove the risk of electric shock. The maintenance personnel then usually open the case of the computer and perform whatever upgrades or modifications are necessary. The upgrades may include, for example, adding additional memory, removing and replacing malfunctioning memory or other malfunctioning components. Changing, for example, a video card, will normally cause the computer system to crash upon power up if this change has been made during a sleep mode. This is due to the system awaking from, for example, the S4 mode, loading the hiberfil.sys file and assuming operations in the conventional manner without having taken into account the hardware changes, that is, there is no way the system can be informed of such hardware changes while it is in one of the sleep modes.
Prior solutions have attempted to solve this problem by ensuring the operating system can detect the hardware change and then to ask the user to choose between the operating system attempting to catch up with the hardware change, that is, to attempt to take the change into account and resume normal operation, or to restart the computer, which will entail losing the working environment including any documents and data associated with applications that were open immediately prior to entering the S4 sleep mode. It is often the case, for the first option, that the operating system will fail to take the hardware change into account and that the second option is unacceptable.
It is an object of the present invention at least to mitigate some of the problems of the prior art.